#include <iostream>
// ==============================================
typedef int ( *F )( int );
int f0( int n )
{
 return 0;
}
int fn( int n )
{
 F f[2] = {fn,f0};
 return n + f[!n]( n - 1 );
}

// ==============================================
int sum(int n) {
    char (*p)[2];
    return (short*)&p[n][n] - (short*)&p[0][0];
}
// ===============================================
int mmain(){
	std::cout << fn(5) << std::endl;
	return 0;
}